﻿using Basic.FlowModel.DB;
using Basic.FlowRemoteModel.NodeMsg.Model;

namespace Basic.FlowCollect
{
    public interface INodeMsgCollect
    {
        void Add ( NodeMsgSet data );
        void Clear ( long flowId );
        void Clear ( long flowId, long nodeId );
        void Delete ( DBFlowNodeMsg msg );
        DBFlowNodeMsg Get ( long id );
        Result[] Gets<Result> ( long flowId ) where Result : class, new();
        Result[] GetsByNode<Result> ( long nodeId ) where Result : class, new();
        bool Set ( DBFlowNodeMsg source, NodeMsgSet data );
    }
}